﻿<?xml version="1.0" encoding="utf-8"?>
<xsd:schema
    targetNamespace="http://metalx.org/i386/Functions/TaskManager"
    elementFormDefault="qualified"
    xmlns="http://metalx.org/i386/Functions/TaskManager"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<xsd:element name="Reset">
		<xsd:annotation>
			<xsd:documentation>
				Initializes a memory block for use by the memory manager.
				
				Modifies: AX
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType/>
	</xsd:element>

	<xsd:element name="AddTask">
		<xsd:annotation>
			<xsd:documentation>
				Requests a pointer to a memory segment.

				Input:
				AX=Length

				Output:
				DI=Address
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:attribute name="length" type="xsd:int"/>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="Next">
		<xsd:annotation>
			<xsd:documentation>
				Saves the current task state, and loads the next task.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType/>
	</xsd:element>
	
	<xsd:element name="Yield">
		<xsd:annotation>
			<xsd:documentation>
				Saves the current task state, and loads the next task.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType/>
	</xsd:element>

</xsd:schema>
